package com.wwx.worldonwheels.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class WwxServiceExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public WwxServiceExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andServIdIsNull() {
            addCriterion("serv_id is null");
            return (Criteria) this;
        }

        public Criteria andServIdIsNotNull() {
            addCriterion("serv_id is not null");
            return (Criteria) this;
        }

        public Criteria andServIdEqualTo(Integer value) {
            addCriterion("serv_id =", value, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdNotEqualTo(Integer value) {
            addCriterion("serv_id <>", value, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdGreaterThan(Integer value) {
            addCriterion("serv_id >", value, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("serv_id >=", value, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdLessThan(Integer value) {
            addCriterion("serv_id <", value, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdLessThanOrEqualTo(Integer value) {
            addCriterion("serv_id <=", value, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdIn(List<Integer> values) {
            addCriterion("serv_id in", values, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdNotIn(List<Integer> values) {
            addCriterion("serv_id not in", values, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdBetween(Integer value1, Integer value2) {
            addCriterion("serv_id between", value1, value2, "servId");
            return (Criteria) this;
        }

        public Criteria andServIdNotBetween(Integer value1, Integer value2) {
            addCriterion("serv_id not between", value1, value2, "servId");
            return (Criteria) this;
        }

        public Criteria andPickupDateIsNull() {
            addCriterion("pickup_date is null");
            return (Criteria) this;
        }

        public Criteria andPickupDateIsNotNull() {
            addCriterion("pickup_date is not null");
            return (Criteria) this;
        }

        public Criteria andPickupDateEqualTo(Date value) {
            addCriterionForJDBCDate("pickup_date =", value, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("pickup_date <>", value, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateGreaterThan(Date value) {
            addCriterionForJDBCDate("pickup_date >", value, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("pickup_date >=", value, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateLessThan(Date value) {
            addCriterionForJDBCDate("pickup_date <", value, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("pickup_date <=", value, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateIn(List<Date> values) {
            addCriterionForJDBCDate("pickup_date in", values, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("pickup_date not in", values, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("pickup_date between", value1, value2, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andPickupDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("pickup_date not between", value1, value2, "pickupDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateIsNull() {
            addCriterion("dropoff_date is null");
            return (Criteria) this;
        }

        public Criteria andDropoffDateIsNotNull() {
            addCriterion("dropoff_date is not null");
            return (Criteria) this;
        }

        public Criteria andDropoffDateEqualTo(Date value) {
            addCriterionForJDBCDate("dropoff_date =", value, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("dropoff_date <>", value, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateGreaterThan(Date value) {
            addCriterionForJDBCDate("dropoff_date >", value, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("dropoff_date >=", value, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateLessThan(Date value) {
            addCriterionForJDBCDate("dropoff_date <", value, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("dropoff_date <=", value, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateIn(List<Date> values) {
            addCriterionForJDBCDate("dropoff_date in", values, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("dropoff_date not in", values, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("dropoff_date between", value1, value2, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andDropoffDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("dropoff_date not between", value1, value2, "dropoffDate");
            return (Criteria) this;
        }

        public Criteria andStartMeterIsNull() {
            addCriterion("start_meter is null");
            return (Criteria) this;
        }

        public Criteria andStartMeterIsNotNull() {
            addCriterion("start_meter is not null");
            return (Criteria) this;
        }

        public Criteria andStartMeterEqualTo(Integer value) {
            addCriterion("start_meter =", value, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterNotEqualTo(Integer value) {
            addCriterion("start_meter <>", value, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterGreaterThan(Integer value) {
            addCriterion("start_meter >", value, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterGreaterThanOrEqualTo(Integer value) {
            addCriterion("start_meter >=", value, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterLessThan(Integer value) {
            addCriterion("start_meter <", value, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterLessThanOrEqualTo(Integer value) {
            addCriterion("start_meter <=", value, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterIn(List<Integer> values) {
            addCriterion("start_meter in", values, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterNotIn(List<Integer> values) {
            addCriterion("start_meter not in", values, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterBetween(Integer value1, Integer value2) {
            addCriterion("start_meter between", value1, value2, "startMeter");
            return (Criteria) this;
        }

        public Criteria andStartMeterNotBetween(Integer value1, Integer value2) {
            addCriterion("start_meter not between", value1, value2, "startMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterIsNull() {
            addCriterion("end_meter is null");
            return (Criteria) this;
        }

        public Criteria andEndMeterIsNotNull() {
            addCriterion("end_meter is not null");
            return (Criteria) this;
        }

        public Criteria andEndMeterEqualTo(Integer value) {
            addCriterion("end_meter =", value, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterNotEqualTo(Integer value) {
            addCriterion("end_meter <>", value, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterGreaterThan(Integer value) {
            addCriterion("end_meter >", value, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterGreaterThanOrEqualTo(Integer value) {
            addCriterion("end_meter >=", value, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterLessThan(Integer value) {
            addCriterion("end_meter <", value, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterLessThanOrEqualTo(Integer value) {
            addCriterion("end_meter <=", value, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterIn(List<Integer> values) {
            addCriterion("end_meter in", values, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterNotIn(List<Integer> values) {
            addCriterion("end_meter not in", values, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterBetween(Integer value1, Integer value2) {
            addCriterion("end_meter between", value1, value2, "endMeter");
            return (Criteria) this;
        }

        public Criteria andEndMeterNotBetween(Integer value1, Integer value2) {
            addCriterion("end_meter not between", value1, value2, "endMeter");
            return (Criteria) this;
        }

        public Criteria andMilageLimitIsNull() {
            addCriterion("milage_limit is null");
            return (Criteria) this;
        }

        public Criteria andMilageLimitIsNotNull() {
            addCriterion("milage_limit is not null");
            return (Criteria) this;
        }

        public Criteria andMilageLimitEqualTo(Integer value) {
            addCriterion("milage_limit =", value, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitNotEqualTo(Integer value) {
            addCriterion("milage_limit <>", value, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitGreaterThan(Integer value) {
            addCriterion("milage_limit >", value, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitGreaterThanOrEqualTo(Integer value) {
            addCriterion("milage_limit >=", value, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitLessThan(Integer value) {
            addCriterion("milage_limit <", value, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitLessThanOrEqualTo(Integer value) {
            addCriterion("milage_limit <=", value, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitIn(List<Integer> values) {
            addCriterion("milage_limit in", values, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitNotIn(List<Integer> values) {
            addCriterion("milage_limit not in", values, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitBetween(Integer value1, Integer value2) {
            addCriterion("milage_limit between", value1, value2, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andMilageLimitNotBetween(Integer value1, Integer value2) {
            addCriterion("milage_limit not between", value1, value2, "milageLimit");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeIsNull() {
            addCriterion("wwx_discount_dis_code is null");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeIsNotNull() {
            addCriterion("wwx_discount_dis_code is not null");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeEqualTo(String value) {
            addCriterion("wwx_discount_dis_code =", value, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeNotEqualTo(String value) {
            addCriterion("wwx_discount_dis_code <>", value, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeGreaterThan(String value) {
            addCriterion("wwx_discount_dis_code >", value, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeGreaterThanOrEqualTo(String value) {
            addCriterion("wwx_discount_dis_code >=", value, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeLessThan(String value) {
            addCriterion("wwx_discount_dis_code <", value, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeLessThanOrEqualTo(String value) {
            addCriterion("wwx_discount_dis_code <=", value, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeLike(String value) {
            addCriterion("wwx_discount_dis_code like", value, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeNotLike(String value) {
            addCriterion("wwx_discount_dis_code not like", value, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeIn(List<String> values) {
            addCriterion("wwx_discount_dis_code in", values, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeNotIn(List<String> values) {
            addCriterion("wwx_discount_dis_code not in", values, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeBetween(String value1, String value2) {
            addCriterion("wwx_discount_dis_code between", value1, value2, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxDiscountDisCodeNotBetween(String value1, String value2) {
            addCriterion("wwx_discount_dis_code not between", value1, value2, "wwxDiscountDisCode");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdIsNull() {
            addCriterion("wwx_customer_cust_id is null");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdIsNotNull() {
            addCriterion("wwx_customer_cust_id is not null");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdEqualTo(Integer value) {
            addCriterion("wwx_customer_cust_id =", value, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdNotEqualTo(Integer value) {
            addCriterion("wwx_customer_cust_id <>", value, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdGreaterThan(Integer value) {
            addCriterion("wwx_customer_cust_id >", value, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("wwx_customer_cust_id >=", value, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdLessThan(Integer value) {
            addCriterion("wwx_customer_cust_id <", value, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdLessThanOrEqualTo(Integer value) {
            addCriterion("wwx_customer_cust_id <=", value, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdIn(List<Integer> values) {
            addCriterion("wwx_customer_cust_id in", values, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdNotIn(List<Integer> values) {
            addCriterion("wwx_customer_cust_id not in", values, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdBetween(Integer value1, Integer value2) {
            addCriterion("wwx_customer_cust_id between", value1, value2, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxCustomerCustIdNotBetween(Integer value1, Integer value2) {
            addCriterion("wwx_customer_cust_id not between", value1, value2, "wwxCustomerCustId");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntIsNull() {
            addCriterion("wwx_wow_wow_id_int is null");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntIsNotNull() {
            addCriterion("wwx_wow_wow_id_int is not null");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntEqualTo(Integer value) {
            addCriterion("wwx_wow_wow_id_int =", value, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntNotEqualTo(Integer value) {
            addCriterion("wwx_wow_wow_id_int <>", value, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntGreaterThan(Integer value) {
            addCriterion("wwx_wow_wow_id_int >", value, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntGreaterThanOrEqualTo(Integer value) {
            addCriterion("wwx_wow_wow_id_int >=", value, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntLessThan(Integer value) {
            addCriterion("wwx_wow_wow_id_int <", value, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntLessThanOrEqualTo(Integer value) {
            addCriterion("wwx_wow_wow_id_int <=", value, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntIn(List<Integer> values) {
            addCriterion("wwx_wow_wow_id_int in", values, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntNotIn(List<Integer> values) {
            addCriterion("wwx_wow_wow_id_int not in", values, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntBetween(Integer value1, Integer value2) {
            addCriterion("wwx_wow_wow_id_int between", value1, value2, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdIntNotBetween(Integer value1, Integer value2) {
            addCriterion("wwx_wow_wow_id_int not between", value1, value2, "wwxWowWowIdInt");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutIsNull() {
            addCriterion("wwx_wow_wow_id_out is null");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutIsNotNull() {
            addCriterion("wwx_wow_wow_id_out is not null");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutEqualTo(Integer value) {
            addCriterion("wwx_wow_wow_id_out =", value, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutNotEqualTo(Integer value) {
            addCriterion("wwx_wow_wow_id_out <>", value, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutGreaterThan(Integer value) {
            addCriterion("wwx_wow_wow_id_out >", value, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutGreaterThanOrEqualTo(Integer value) {
            addCriterion("wwx_wow_wow_id_out >=", value, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutLessThan(Integer value) {
            addCriterion("wwx_wow_wow_id_out <", value, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutLessThanOrEqualTo(Integer value) {
            addCriterion("wwx_wow_wow_id_out <=", value, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutIn(List<Integer> values) {
            addCriterion("wwx_wow_wow_id_out in", values, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutNotIn(List<Integer> values) {
            addCriterion("wwx_wow_wow_id_out not in", values, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutBetween(Integer value1, Integer value2) {
            addCriterion("wwx_wow_wow_id_out between", value1, value2, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxWowWowIdOutNotBetween(Integer value1, Integer value2) {
            addCriterion("wwx_wow_wow_id_out not between", value1, value2, "wwxWowWowIdOut");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdIsNull() {
            addCriterion("wwx_invoice_invoice_id is null");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdIsNotNull() {
            addCriterion("wwx_invoice_invoice_id is not null");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdEqualTo(Integer value) {
            addCriterion("wwx_invoice_invoice_id =", value, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdNotEqualTo(Integer value) {
            addCriterion("wwx_invoice_invoice_id <>", value, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdGreaterThan(Integer value) {
            addCriterion("wwx_invoice_invoice_id >", value, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("wwx_invoice_invoice_id >=", value, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdLessThan(Integer value) {
            addCriterion("wwx_invoice_invoice_id <", value, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdLessThanOrEqualTo(Integer value) {
            addCriterion("wwx_invoice_invoice_id <=", value, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdIn(List<Integer> values) {
            addCriterion("wwx_invoice_invoice_id in", values, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdNotIn(List<Integer> values) {
            addCriterion("wwx_invoice_invoice_id not in", values, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdBetween(Integer value1, Integer value2) {
            addCriterion("wwx_invoice_invoice_id between", value1, value2, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxInvoiceInvoiceIdNotBetween(Integer value1, Integer value2) {
            addCriterion("wwx_invoice_invoice_id not between", value1, value2, "wwxInvoiceInvoiceId");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinIsNull() {
            addCriterion("wwx_vehicle_vin is null");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinIsNotNull() {
            addCriterion("wwx_vehicle_vin is not null");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinEqualTo(String value) {
            addCriterion("wwx_vehicle_vin =", value, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinNotEqualTo(String value) {
            addCriterion("wwx_vehicle_vin <>", value, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinGreaterThan(String value) {
            addCriterion("wwx_vehicle_vin >", value, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinGreaterThanOrEqualTo(String value) {
            addCriterion("wwx_vehicle_vin >=", value, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinLessThan(String value) {
            addCriterion("wwx_vehicle_vin <", value, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinLessThanOrEqualTo(String value) {
            addCriterion("wwx_vehicle_vin <=", value, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinLike(String value) {
            addCriterion("wwx_vehicle_vin like", value, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinNotLike(String value) {
            addCriterion("wwx_vehicle_vin not like", value, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinIn(List<String> values) {
            addCriterion("wwx_vehicle_vin in", values, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinNotIn(List<String> values) {
            addCriterion("wwx_vehicle_vin not in", values, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinBetween(String value1, String value2) {
            addCriterion("wwx_vehicle_vin between", value1, value2, "wwxVehicleVin");
            return (Criteria) this;
        }

        public Criteria andWwxVehicleVinNotBetween(String value1, String value2) {
            addCriterion("wwx_vehicle_vin not between", value1, value2, "wwxVehicleVin");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}